﻿using Microsoft.Extensions.DependencyInjection;
using System;
using System.Windows.Forms;

namespace WindowsFormsTest
{
    internal static class Program
    {
        /// <summary>
        /// 应用程序的主入口点。
        /// </summary>
        //[STAThread]
        //static void Main()
        //{
        //    Application.EnableVisualStyles();
        //    Application.SetCompatibleTextRenderingDefault(false);
        //    Application.Run(new Form1());
        //}

        // 创建一个服务提供者
        public static IServiceProvider ServiceProvider { get; private set; }

        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);

            // 配置服务集合
            var serviceCollection = new ServiceCollection();
            ConfigureServices(serviceCollection);

            // 构建服务提供者
            ServiceProvider = serviceCollection.BuildServiceProvider();

            // 启动主窗体
            Application.Run(ServiceProvider.GetRequiredService<Form1>());
        }

        private static void ConfigureServices(IServiceCollection services)
        {
            // 在这里注册你的服务和窗体
            services.AddSingleton<Form1>();
            services.AddSingleton<UserControl1>();
            services.AddSingleton<UserControl2>();
            services.AddSingleton<UserControl3>();
        }


    }
}
